package com.example.exam.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 *
 * </p>
 *
 * @author 江晨晖
 * @since 2022-12-15
 */
@Data
@TableName("exam")
@ApiModel(value = "Exam对象", description = "")
public class Exam implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableField(value = "course_id")
    private String courseId;

    @ApiModelProperty("试卷id")
    @TableId(value = "exam_id", type = IdType.AUTO)
    private Integer examId;

    @ApiModelProperty("试卷名称")
    @TableField("exam_name")
    private String examName;

    @ApiModelProperty("创建者id")
    @TableField("creator_id")
    private Integer creatorId;

    @ApiModelProperty("答题时间(分钟)")
    @TableField("time")
    private Integer time;

    @ApiModelProperty("创建时间")
    @TableField("create_date")
    private Date createDate;

    @ApiModelProperty("修改时间")
    @TableField("update_date")
    private Date updateDate;

    @ApiModelProperty("科目类型id")
    @TableField("subject_id")
    private Integer subjectId;

    @ApiModelProperty("科目类型名称")
    @TableField("subject_name")
    private String subjectName;

    @ApiModelProperty("题目数量")
    @TableField("topic_num")
    private Integer topicNum;

    @ApiModelProperty("总分")
    @TableField("total_score")
    private Float totalScore;

    @ApiModelProperty("及格分数")
    @TableField("pass_mark")
    private Float passMark;

    @ApiModelProperty("是否允许复制  0:不允许  1:允许(默认)")
    @TableField("permit_copy")
    private Integer permitCopy;

    @ApiModelProperty("允许页面切换次数  -1: 允许多次切换  5: 默认")
    @TableField("switch_page")
    private Integer switchPage;

    @ApiModelProperty("是否打乱题目顺序 0:不打乱(默认) 1:打乱顺序")
    @TableField("disrupt_order")
    private Integer disruptOrder;

    @ApiModelProperty("允许考生考试次数 默认1")
    @TableField("repeat_test")
    private Integer repeatTest;

    @ApiModelProperty("是否自动评分 0:否   1:是(默认)")
    @TableField("auto_mack")
    private Integer autoMack;


}